﻿// KittyFeral PVE - HB Routine for FeralDruid 5.4 - By Neyia
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using Styx;
using Styx.Helpers;
using Styx.Common;
using System.ComponentModel;
using DefaultValue = Styx.Helpers.DefaultValueAttribute;
using Styx.TreeSharp;

namespace KittyFeral
{
    public class SettingsExtraKittyFeral : Settings
    {
        public static readonly SettingsExtraKittyFeral myPrefs = new SettingsExtraKittyFeral();

        public SettingsExtraKittyFeral()
            : base(
                Path.Combine(Utilities.AssemblyDirectory,
                    string.Format(@"Routines/Settings/Config/Pasterke/{0}/Druid/SettingsExtraKittyFeral-{1}.xml", StyxWoW.Me.RealmName, StyxWoW.Me.Name))
                )
        {
        }
        public enum Keypress
        {
            NONE,
            LSHIFT,
            RSHIFT,
            LCTRL,
            RCTRL,
            LALT,
            RALT
        };

        

        [Setting]
        [DefaultValue(false)]
        [Category("Movement")]
        [DisplayName("Allow Movement")]
        [Description("Allow Movement")]
        public bool Movement { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Movement")]
        [DisplayName("Allow Facing")]
        [Description("Allow Movement")]
        public bool AllowFacing { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Movement")]
        [DisplayName("Allow Targeting")]
        [Description("Allow Movement")]
        public bool AllowTargeting { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Movement in Raids, Instances, Dungeons")]
        [DisplayName("Disable Auto Move")]
        [Description("Disable Auto Movement in Raids, Instances, Dungeons")]
        public bool DisableAutoMovement { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Movement in Raids, Instances, Dungeons")]
        [DisplayName("Disable Auto Target")]
        [Description("Disable Auto Targeting in Raids, Instances, Dungeons")]
        public bool DisableAutoTargeting { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Movement in Raids, Instances, Dungeons")]
        [DisplayName("Disable Auto Facing")]
        [Description("Disable Auto Facing in Raids, Instances, Dungeons")]
        public bool DisableAutoFacing { get; set; }

        [Setting]
        [DefaultValue(Keypress.NONE)]
        [Category("Extra's")]
        [DisplayName("Pause Aoe Key")]
        [Description("Pause Aoe Key")]
        public Keypress StopAoeKey { get; set; }

        [Setting]
        [DefaultValue(Keypress.NONE)]
        [Category("Extra's")]
        [DisplayName("Bear Form Key")]
        [Description("Key to switch to Bear Form")]
        public Keypress BearFormKeys { get; set; }

        [Setting]
        [DefaultValue(Keypress.NONE)]
        [Category("Extra's")]
        [DisplayName("Pause CR Key")]
        [Description("Pause CR Key")]
        public Keypress StopCRKey { get; set; }

        [Setting]
        [DefaultValue(true)]
        [Category("Extra's")]
        [DisplayName("Print Raidstyle Messages")]
        public bool PrintRaidstyleMsg { get; set; }

    }
}
